package cn.linran.pet.service.impl;

import cn.linran.pet.domain.Pet;
import cn.linran.pet.domain.PetDetail;
import cn.linran.pet.mapper.PetDetailMapper;
import cn.linran.pet.mapper.PetMapper;
import cn.linran.pet.service.IPetService;
import cn.linran.basic.service.impl.BaseServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.Date;
import java.util.List;

/**
 * 业务实现类：
 */
@Service
public class PetServiceImpl extends BaseServiceImpl<Pet> implements IPetService {
    @Autowired
    private PetMapper petMapper;

    @Autowired
    private PetDetailMapper petDetailMapper;

    @Override
    public void onSale(List<Long> ids) {
        // 1审核，通过则上架，没通过直接自定义异常，保存一条数据

        // 该状态
        // 上架时间
        Date date = new Date();
        petMapper.onSale(ids,date);
    }

    @Override
    public void offSale(List<Long> ids) {
        /**
         * 改状态 ： sql中写state=1
         * 改下架时间： 创建一个当前时间，数据库修改
         * 1. 对象
         * 2. map
         * 3.直接写两个参数
         */
        Date date = new Date();
        petMapper.offSale(ids,date);

    }

    @Override
    public void remove(Long id) {

            super.remove(id);//删除宠物信息
            if (petDetailMapper.loadByPetId(id)!=null)//如果存在宠物详情
            petDetailMapper.removeByPetId(id); //根据宠物id删除宠物详细信息

    }
//    @Override
//    public void remove(Long id) {
//
//        super.remove(id);
//        // 详情
//        petDetailMapper.removeByPetId(id);
//    }
//}
}
